home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
AmigActive 23
/
AACD 23.iso
/
AACD
/
Resources
/
System
/
fat95
/
english
/
readme.too
< prev
Wrap
Text File
|
2001-06-12
|
14KB
|
416 lines
fat95 v2.15 (11-Jun-2001) readme file
General facts
=============
"fat95" is designed for data exchange with other platforms. This means:
media must be made 100% PC compatible. Basically, there are 2 ways of achieving
this:
a) "simple", "unpartitioned"
The whole storage space of the medium is occupied by one single FAT data
structure. It also implies that there is no AMIGA style partitioning info
(RDB etc.).
This method is common on floppies (DD and HD), magneto-optical disks (MO`s),
and it is - at least in theory - also permitted on ZIP disks.
b) "partitioned"
There must be a valid PC style "master boot record" (MBR) inside the first
block of the media. fat95 will then evaluate the contained partition table
to figure out the type, location and size of the FAT data partition.
This method is required for harddisks. Usually, ZIP media also do it that way,
although in most cases there will be only one single FAT16 partition spanning
almost all of the storage space.
You best set up partitions using adequate PC tools like "fdisk", "xfdisk" or
"PartitionMagic". These programs normally leave some unused areas between
partition tables and data partitions. You may then utilize suitable AMIGA
tools to ADD parallel AMIGA style partitioning info.
Important: fat95 only looks at the PC style tables. Using only, for example,
"HDToolBox" will thus NOT WORK.
boot95
======
Harddisks that were partitioned on a PC often have an unused area of about
30 kbytes between the MBR and the first partition. You may now try to bring
an Amiga style RDSK chain in there to make a bootable fat95 partition.
First, mount that partition in the usual way, let`s say as PCHD:.
Then type into a shell
boot95 PCHD:
fat95 is needed in the L: drawer for this unless you specify a different file
as a second parameter. Simply repeat the procedure to update a fat95 version.
Caution: existing Amiga partition info will be overwritten!
Caution again: be sure that your partition is reachable at boot time, i.e.
within the first 4 Gbytes of a scsi.device disk.
My A1200 already can boot OS 3.1 off a 4 Gbyte FAT32 partition now.
There are still some obstacles, however. For example, HDToolBox has problems
displaying LBA style partitions.
Setup
=====
fat95 is installed in the same way as most other alternative filesystems.
I tried hard to make it quite resistant against wrong or missing mountlist
parameters. However, these are the important ones:
FileSystem = L:fat95
(or wherever you actually stored it, full path)
StackSize = 2048
(do not use less, you will risk a crash.)
Device = mfm.device
Unit = 0
Flags = 0
(which physical drive to use)
MaxTransfer = 0x20000 /* simple IDE harddisk @ A1200 */
(not needed for floppies and ATAPI devices, eg. ZIP)
LowCyl = 0
(or just no "LowCyl" entry at all.)
Buffers = 20 /* DD Floppy */
Buffers = 40 /* HD Floppy */
Buffers = 100 /* ZIPs, MOs, ... */
(quite useful values. When using excessively deep directory trees,
you can try some more buffers.)
GlobVec = -1
(this is an assembler program)
Control = "+s"
(forces fat95 into direct SCSI mode rather than trackdisk style.
May help for certain harddisks > 4 Gbyte.)
And finally, the worst of all ;-)
DosType = 0x464154xx /* "FATx" */
That last byte "xx" serves as the almighty master control.
xx = 00 Choose this for floppies, and for floppies only.
It activates several special features like trackdisk
ETD_ commands, and a workaround for some non-mfm.device`s
that should allow for automatic HD detection now.
xx = 01 The catch-most-of-them universal value. Works with unpartitioned
media, and will search for for the first FAT partition on
partitioned media.
If you have more than one FAT12, FAT16 or FAT32 partition on your harddisk,
we will have to get a bit more detailled. Just try the LINUX style partition
number:
xx = 01..04 Use "primary" partition of that number.
"04" would be the exact value for ZIP`s, but "01" should also
work since the first 3 partition table entries are unused
on such media normally.
xx = 05..? Use "logical drive in an extended partition". "05" is the first
logical drive, "06" the second one etc.
You can find some examples in the file of the same name in this dir.
OS 2.0+ Installation
====================
* Copy the "fat95" file into your L: drawer.
* Doubleclick the "MS0" (internal floppy) or "MS1" example icons to mount now.
* Copy them into the DEVS:DOSDrivers drawer to auto-mount at system start time.
* Create your own mount scrips as needed.
OS 1.3 Installation
===================
The mfm.device does not work with V 1.3 trackdisk.device. A suitable equivalent
is the messydisk.device by Olaf Seibert. It was originally distributed on a
PD disk called "Time #10" 9 years (!) ago and has now become nearly
unavailable. Therefore I decided to include it here.
Doubleclick the "install_fat95_1.3" icon, or
* copy the file "fat95" into your "L:" drawer
* copy the files "messydisk.device" and "fat95mountlist" into "DEVS:"
Then add this line to your S:Startup-Sequence file:
mount ms0: from fat95mountlist
Use "ms1:" instead of "ms0:" if you want your second floppy drive to work on
MS-DOS/Win disks.
Special Issues
==============
When writing into the root drawer of a fat95 disk, you may get the somewhat
strange error message 232 "no more entries in directory". This means:
MS-DOS/Win uses a non-extensible, fixed-size root directory table that can
only hold a limited number of files and sub-dirs even if there is enough
space left on the disk itself. In this case, do one of the following:
* store into a sub-directory instead of the root.
* move one or two files into a sub-directory, then try writing again.
* delete one or two root files.
* choose another disk.
Unfortunately, I still cannot fully recommend using the messydisk.device.
One very annoying fact is that the MOUNT task will hang until the first
disk change in the appropriate drive is performed. Perhaps this is a race
condition with trackdisk device since everything works quite well in
single step debugging mode.
fat95 is now able to recognize NSD (new style device) information and it can
now make use of Trackdisk64 and/or SCSI direct commands for media > 4 Gbyte
as well.
Due to several complaints about a disabled "FAT" workbench icon, I decided to
report volumes intentionally incorrect as type "DOS\0". This will make that
icon disappear. I hope and prey that this does not encourage any program to
unqualified direct accessing...
FAT32 notes
===========
The literally biggest difference compared to the older FAT16 is the so-called
File Allocation Table, or FAT. It usually covers 1/1024 of the entire
partition size. These are impressive 8 Mbytes on an 8 Gbyte partition, for
example. Therefore fat95 does not cache 32bit FAT`s entirely. Access to
fragmented files will slow down a bit this way while you are saving all that
precious memory.
The variable storing the currently available free space is another good new
idea... well, at least in theory. The real world does not always keep
it up to date. fat95 rather chooses to calculate the free space out of the FAT
in the old-fashioned way instead. This will take some time directly after
mounting during which you can only read from the volume
("volume is validating").
xxxscsi.device hint
===================
Most storage devices are controlled by the scsi.device or a similarly
sounding software module of your controller board.
Currently, I am using a NEC ZIP100 drive at the internal IDE port of
my A1200. Unfortunately the original ROM resident scsi.device does not
like ATAPI hardware at all. It only works with IDE harddisks.
Therefore I recommend installing an appropriate patch, such as
IDE_scsidisk or IDEfix.
The "console"
=============
fat95 doesn`t really support file comments. Reading them returns the extended
date stamps, and writing them accomplishes nothing.
Most of the time.
Just pick a random object of a fat95 disk and assign it the comment
!scandisk
and see what happens...
This little cheat code is not perfect yet. However, it already does bring back
those infamous "lost files".
Troubleshooting
===============
?: What does the message "object not found" mean when trying to mount
a fat95 device?
!: Check the "Device =", "Unit =" and "Flags =" MountList entries.
If nothing seems to help, you can create a dump of the internal fat95
variables using the included tool "fat95debug". For example, type into
a shell:
fat95debug ms0: ram:ms0.log
if the internal floppy drive MS0: refuses to work.
Then send me the just created binary file (about half a kbyte) by email.
I promise there are no passwords or similar secrets in it.
For the specialists...
======================
...here is a list of the supported DOS packets so far:
0005 ACTION_DIE
0007 ACTION_CURRENT_VOLUME
0008 ACTION_LOCATE_OBJECT
0009 ACTION_RENAME_DISK
0015 ACTION_FREE_LOCK
0016 ACTION_DELETE_OBJECT
0017 ACTION_RENAME_OBJECT
0018 ACTION_MORE_CACHE
0019 ACTION_COPY_DIR
0021 ACTION_SET_PROTECT
0022 ACTION_CREATE_DIR
0023 ACTION_EXAMINE_OBJECT
0024 ACTION_EXAMINE_NEXT
0025 ACTION_DISK_INFO
0026 ACTION_INFO
0027 ACTION_FLUSH
0028 ACTION_SET_COMMENT
0029 ACTION_PARENT
0031 ACTION_INHIBIT
0034 ACTION_SET_DATE
0082 ACTION_READ
0087 ACTION_WRITE
1004 ACTION_FINDUPDATE
1005 ACTION_FINDINPUT
1006 ACTION_FINDOUTPUT
1007 ACTION_END
1008 ACTION_SEEK
1020 ACTION_FORMAT
1023 ACTION_WRITE_PROTECT
1026 ACTION_FH_FROM_LOCK
1027 ACTION_IS_FILESYSTEM
1028 ACTION_CHANGE_MODE
1030 ACTION_COPY_DIR_FH
1031 ACTION_PARENT_FH
1033 ACTION_EXAMINE_ALL
1034 ACTION_EXAMINE_FH
1035 ACTION_EXAMINE_ALL_END
4200 ACTION_SERIALIZE_DISK
4201 ACTION_GET_DISK_FSSM
4202 ACTION_FREE_DISK_FSSM
History
=======
v1.5 11/1999 first published version
v1.6 12/1999 fixed large partition addressing bug
added workaround for SID2
added volume serial number recognition
added directory optimization
v1.7 01/2000 fixed minor formatting bug
fixed crash on double-mounted volumes
made error requesters more informative
made code reentrant for multi-device use
v1.8 01/2000 added workaround for certain devices who keep
trashing forbidden 68k registers
v1.11 01/2000 new workarounds for "difficult" devices
made drawer operations a bit faster
v1.12 01/2000 added on/off feature for ETD_xxx device commands
added ACTION_SERIALIZE_DISK packet (used by DiskCopy)
made FAT16 mode writeback faster
improved disk format recognition
v1.13 02/2000 fixed SERIALIZE_DISK bug
v1.14 02/2000 fixed bug in updating all FAT copies
alternative english version
v1.15 02/2000 code optimizations
v1.17 02/2000 second published version
improved FORMAT command support
v1.18 03/2000 first try to implement partition support
v1.19 03/2000 fixed partition selection bug
v1.20 03/2000 introduced separate directory and file caches
added dummy workbench icon suppression
v1.21 03/2000 made file access cluster-wise
added diskchange messsages to system (IDCMP_DISKINSERTED...)
v1.22 03/2000 fixed "large sectors" bug (> 512 bytes)
v2.0 04/2000 first try on FAT32
fixed another "large sectors" bug
v2.1 04/2000 added NSD and TD64 support
fixed bug on 28bit entries for FAT32
changed intl character handling for short filenames
fixed "file creation" timestamp
v2.2 06/2000 new restart validator routines
longer filenames (65 chars)
added FAT32 formatting routines
small write access optimizations
changed AddBuffers support (like FFS)
reworked documentation
v2.3 07/2000 added native ExAll() and ExAllEnd()
added ChangeMode()
bugfixes:
ExamineFH()
OpenFromLock()
Rename()
very long path names
Workbench support
v2.4 07/2000 bugfixes:
exclusive locks
double MSDOS 8.3 names
v2.5 07/2000 new buffering scheme (track-wise)
bugfix:
free storage space recognition on FAT32
v2.6 07/2000 bugfixes:
crash when disk is full
access to inconsistent files
v2.7 08/2000 fixed logigal drive recognition #07+
v2.8 08/2000 added software write protection "Lock"
added diagnosis tool "fat95debug"
v2.9 09/2000 fixed AddBuffers bug
ACTION_CURRENT_VOLUME now safer
made all access trackwise
v2.10 10/2000 now recognizes some more "exotic" partition tables
added error requester "TD64 needed but missing"
v2.11 12/2000 better FDA compatibility
v2.12 02/2001 added "SCSI direct" command support
v2.13 02/2001 new buffering system
v2.14 03/2001 fixed nasty FAT32 mode bug
v2.15 05/2001 bugfixes:
crash on filenames >65 chars
shutdown sequence (ACTION_DIE)
short name generation
new:
"pure" attribute
error check functions
boot95
(EOF)